package com.stylefeng.guns.modular.system.model;

import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;


/**
 * <p>
 * 课堂信息; InnoDB free: 18432 kB
 * </p>
 *
 * @author stylefeng123
 * @since 2018-04-04
 */
@TableName("clm_room")
public class ClmRoom extends Model<ClmRoom> {

    private static final long serialVersionUID = 1L;

    /**
     * 课堂ID
     */
    @TableId("room_id")
    private String roomId;
    /**
     * 站点id
     */
    @TableField("site_id")
    private String siteId;
    
    @TableField("province_code")
    private String provinceCode ;
    @TableField("city_code")
	private String cityCode ;
    @TableField("area_code")
	private String areaCode ;
	
	/**教师就职省*/
    @TableField("org_province_code")
    private String orgProvinceCode;
    @TableField("org_province_name")
    private String orgProvinceName;
    /**教师就职市*/
    @TableField("org_city_code")
    private String orgCityCode;
    @TableField("org_city_name")
    private String orgCityName;
    /**教师就职区县*/
    @TableField("org_area_code")
    private String orgAreaCode;
    @TableField("org_area_name")
    private String orgAreaName;
    
    /**
     * 老师ID,对于平台用户
     */
    @TableField("teacher_id")
    private String teacherId;
    /**
     * 课堂编号
     */
    @TableField("number_")
    private String number;
    /**
     * 课堂主题
     */
    @TableField("subject_")
    private String subject;
    /**
     * 开始时间
     */
    @TableField("start_date")
    private Date startDate;
    /**
     * 直播类型(家校互通--home_and_school、一校带多校--more_school，直播教研--live_teach,默认为一校带多校)
     */
    @TableField("live_type")
    private String liveType;
    /**
     * 公开范围(本校公开_并发50、年级公开_并发50、班级公开_并发10、完全公开，默认完全公开)
     */
    @TableField("public_scope")
    private String publicScope;
    /**
     * 所属学校ID(第三方获取)
     */
    @TableField("school_id")
    private String schoolId;
    /**
     * 所属学段ID(第三方获取)
     */
    @TableField("stage_id")
    private String stageId;
    /**
     * 所属年级ID(第三方获取)
     */
    @TableField("grade_id")
    private String gradeId;
    /**
     * 年级字典表id
     */
    @TableField("dict_grade_id")
    private String dictGradeId;
    /**
     * 所属班级ID(第三方获取)
     */
    @TableField("class_id")
    private String classId;
    /**
     * 所属科目ID(第三方获取)
     */
    @TableField("subject_id")
    private String subjectId;
    /**
     * 科目code
     */
    @TableField("course_code")
    private String courseCode;
    /**
     * 教师姓名(冗余字段,便于查询)
     */
    @TableField("teacher_name")
    private String teacherName;
    /**
     * 学校名称(冗余字段,便于查询)
     */
    @TableField("school_name")
    private String schoolName;
    /**
     * 老师口令(长度6-15)
     */
    @TableField("teacher_token")
    private String teacherToken;
    /**
     * web端学生口令(长度最大15)
     */
    @TableField("student_token")
    private String studentToken;
    /**
     * 客户端学生口令
     */
    @TableField("student_client_token")
    private String studentClientToken;
    /**
     * 失效时间
     */
    @TableField("invalid_date")
    private Date invalidDate;
    /**
     * 助教加入口令
     */
    @TableField("assistant_token")
    private String assistantToken;
    /**
     * 老师介绍
     */
    @TableField("speaker_info")
    private String speakerInfo;
    /**
     * 课程介绍
     */
    @TableField("schedule_info")
    private String scheduleInfo;
    /**
     * 是否支持web端学生加入,默认为true
     */
    @TableField("web_join")
    private Integer webJoin;
    /**
     * 是否支持客户端学生加入
     */
    @TableField("client_join")
    private Integer clientJoin;
    @TableField("teacher_join_url")
    private String teacherJoinUrl;
    /**
     * 学员加入url
     */
    @TableField("student_join_url")
    private String studentJoinUrl;
    /**
     * 课堂介绍
     */
    @TableField("description_")
    private String description;
    /**
     * 课堂时长
     */
    @TableField("duration_")
    private Integer duration;
    /**
     * web端学生界面设置(1是三分屏、2是文档视频、3是两分屏、4是互动增加)
     */
    @TableField("ui_mode")
    private String uiMode;
    /**
     * 三分屏颜色选择(blue、default、green，默认是default)
     */
    @TableField("ui_color")
    private String uiColor;
    /**
     * 0:大讲堂，1小班课。默认值0
     */
    @TableField("scene_")
    private String scene;
    /**
     * 是否显示小窗口,默认为false
     */
    @TableField("ui_window")
    private Integer uiWindow;
    /**
     * 是否视频为主，默认为false
     */
    @TableField("ui_video")
    private Integer uiVideo;
    /**
     * 手机浏览器类型
     */
    @TableField("mobile_mode")
    private String mobileMode;
    /**
     * 是否允许web升级到客户端
     */
    @TableField("upgrade_")
    private Integer upgrade;
    /**
     * 密码是否加密
     */
    @TableField("sec_")
    private Integer sec;
    /**
     * 是否实时
     */
    @TableField("realtime_")
    private Integer realtime;
    /**
     * 课堂最大并发数
     */
    @TableField("max_attendees")
    private Integer maxAttendees;
    /**
     * 创建者
     */
    @TableField("create_user_id")
    private String createUserId;
    /**
     * 创建时间
     */
    @TableField("create_date")
    private Date createDate;
    /**
     * 是否要求登陆，1要求，0不要求 默认1
     */
    @TableField("be_login")
    private Integer beLogin;
    /**
     * 上传封面图片的路径
     */
    @TableField("image_url")
    private String imageUrl;
    /**
     * 科目名称
     */
    @TableField("subject_name")
    private String subjectName;
    /**
     * 年级名称
     */
    @TableField("grade_name")
    private String gradeName;
    /**
     * 班级名称
     */
    @TableField("class_name")
    private String className;
    /**
     * 是否删除,true(1)删除，false(0)正常
     */
    @TableField("be_deleted")
    private Integer beDeleted;
    /**
     * 冗余字段，创建课堂时给第三方发送的课堂名称参数，程序中后面加上了时间戳
     */
    @TableField("third_subject")
    private String thirdSubject;
    /**
     * 录制件审核状态：  0-立即公开，1-审核后公开
     */
    @TableField("be_check")
    private Integer beCheck;
    /**
     * 上传的录制件url链接
     */
    @TableField("up_url")
    private String upUrl;

    /**
     * 正在观看课堂人数
     */
    @TableField(exist = false)
    private String lookNum;
    

    public String getLookNum() {
		return lookNum;
	}

	public void setLookNum(String lookNum) {
		this.lookNum = lookNum;
	}

	public String getRoomId() {
        return roomId;
    }

    public void setRoomId(String roomId) {
        this.roomId = roomId;
    }

    public String getSiteId() {
        return siteId;
    }

    public void setSiteId(String siteId) {
        this.siteId = siteId;
    }

    public String getTeacherId() {
        return teacherId;
    }

    public void setTeacherId(String teacherId) {
        this.teacherId = teacherId;
    }

    public String getNumber() {
        return number;
    }

    public void setNumber(String number) {
        this.number = number;
    }

    public String getSubject() {
        return subject;
    }

    public void setSubject(String subject) {
        this.subject = subject;
    }

    public Date getStartDate() {
        return startDate;
    }

    public void setStartDate(Date startDate) {
        this.startDate = startDate;
    }

    public String getLiveType() {
        return liveType;
    }

    public void setLiveType(String liveType) {
        this.liveType = liveType;
    }

    public String getPublicScope() {
        return publicScope;
    }

    public void setPublicScope(String publicScope) {
        this.publicScope = publicScope;
    }

    public String getSchoolId() {
        return schoolId;
    }

    public void setSchoolId(String schoolId) {
        this.schoolId = schoolId;
    }

    public String getStageId() {
        return stageId;
    }

    public void setStageId(String stageId) {
        this.stageId = stageId;
    }

    public String getGradeId() {
        return gradeId;
    }

    public void setGradeId(String gradeId) {
        this.gradeId = gradeId;
    }

    public String getDictGradeId() {
        return dictGradeId;
    }

    public void setDictGradeId(String dictGradeId) {
        this.dictGradeId = dictGradeId;
    }

    public String getClassId() {
        return classId;
    }

    public void setClassId(String classId) {
        this.classId = classId;
    }

    public String getSubjectId() {
        return subjectId;
    }

    public void setSubjectId(String subjectId) {
        this.subjectId = subjectId;
    }

    public String getCourseCode() {
        return courseCode;
    }

    public void setCourseCode(String courseCode) {
        this.courseCode = courseCode;
    }

    public String getTeacherName() {
        return teacherName;
    }

    public void setTeacherName(String teacherName) {
        this.teacherName = teacherName;
    }

    public String getSchoolName() {
        return schoolName;
    }

    public void setSchoolName(String schoolName) {
        this.schoolName = schoolName;
    }

    public String getTeacherToken() {
        return teacherToken;
    }

    public void setTeacherToken(String teacherToken) {
        this.teacherToken = teacherToken;
    }

    public String getStudentToken() {
        return studentToken;
    }

    public void setStudentToken(String studentToken) {
        this.studentToken = studentToken;
    }

    public String getStudentClientToken() {
        return studentClientToken;
    }

    public void setStudentClientToken(String studentClientToken) {
        this.studentClientToken = studentClientToken;
    }

    public Date getInvalidDate() {
        return invalidDate;
    }

    public void setInvalidDate(Date invalidDate) {
        this.invalidDate = invalidDate;
    }

    public String getAssistantToken() {
        return assistantToken;
    }

    public void setAssistantToken(String assistantToken) {
        this.assistantToken = assistantToken;
    }

    public String getSpeakerInfo() {
        return speakerInfo;
    }

    public void setSpeakerInfo(String speakerInfo) {
        this.speakerInfo = speakerInfo;
    }

    public String getScheduleInfo() {
        return scheduleInfo;
    }

    public void setScheduleInfo(String scheduleInfo) {
        this.scheduleInfo = scheduleInfo;
    }

    public Integer getWebJoin() {
        return webJoin;
    }

    public void setWebJoin(Integer webJoin) {
        this.webJoin = webJoin;
    }

    public Integer getClientJoin() {
        return clientJoin;
    }

    public void setClientJoin(Integer clientJoin) {
        this.clientJoin = clientJoin;
    }

    public String getTeacherJoinUrl() {
        return teacherJoinUrl;
    }

    public void setTeacherJoinUrl(String teacherJoinUrl) {
        this.teacherJoinUrl = teacherJoinUrl;
    }

    public String getStudentJoinUrl() {
        return studentJoinUrl;
    }

    public void setStudentJoinUrl(String studentJoinUrl) {
        this.studentJoinUrl = studentJoinUrl;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public Integer getDuration() {
        return duration;
    }

    public void setDuration(Integer duration) {
        this.duration = duration;
    }

    public String getUiMode() {
        return uiMode;
    }

    public void setUiMode(String uiMode) {
        this.uiMode = uiMode;
    }

    public String getUiColor() {
        return uiColor;
    }

    public void setUiColor(String uiColor) {
        this.uiColor = uiColor;
    }

    public String getScene() {
        return scene;
    }

    public void setScene(String scene) {
        this.scene = scene;
    }

    public Integer getUiWindow() {
        return uiWindow;
    }

    public void setUiWindow(Integer uiWindow) {
        this.uiWindow = uiWindow;
    }

    public Integer getUiVideo() {
        return uiVideo;
    }

    public void setUiVideo(Integer uiVideo) {
        this.uiVideo = uiVideo;
    }

    public String getMobileMode() {
        return mobileMode;
    }

    public void setMobileMode(String mobileMode) {
        this.mobileMode = mobileMode;
    }

    public Integer getUpgrade() {
        return upgrade;
    }

    public void setUpgrade(Integer upgrade) {
        this.upgrade = upgrade;
    }

    public Integer getSec() {
        return sec;
    }

    public void setSec(Integer sec) {
        this.sec = sec;
    }

    public Integer getRealtime() {
        return realtime;
    }

    public void setRealtime(Integer realtime) {
        this.realtime = realtime;
    }

    public Integer getMaxAttendees() {
        return maxAttendees;
    }

    public void setMaxAttendees(Integer maxAttendees) {
        this.maxAttendees = maxAttendees;
    }

    public String getCreateUserId() {
        return createUserId;
    }

    public void setCreateUserId(String createUserId) {
        this.createUserId = createUserId;
    }

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    public Integer getBeLogin() {
        return beLogin;
    }

    public void setBeLogin(Integer beLogin) {
        this.beLogin = beLogin;
    }

    public String getImageUrl() {
        return imageUrl;
    }

    public void setImageUrl(String imageUrl) {
        this.imageUrl = imageUrl;
    }

    public String getSubjectName() {
        return subjectName;
    }

    public void setSubjectName(String subjectName) {
        this.subjectName = subjectName;
    }

    public String getGradeName() {
        return gradeName;
    }

    public void setGradeName(String gradeName) {
        this.gradeName = gradeName;
    }

    public String getClassName() {
        return className;
    }

    public void setClassName(String className) {
        this.className = className;
    }

    public Integer getBeDeleted() {
        return beDeleted;
    }

    public void setBeDeleted(Integer beDeleted) {
        this.beDeleted = beDeleted;
    }

    public String getThirdSubject() {
        return thirdSubject;
    }

    public void setThirdSubject(String thirdSubject) {
        this.thirdSubject = thirdSubject;
    }

    public Integer getBeCheck() {
        return beCheck;
    }

    public void setBeCheck(Integer beCheck) {
        this.beCheck = beCheck;
    }

    public String getUpUrl() {
        return upUrl;
    }

    public void setUpUrl(String upUrl) {
        this.upUrl = upUrl;
    }

    @Override
    protected Serializable pkVal() {
        return this.roomId;
    }

    
    public String getProvinceCode() {
		return provinceCode;
	}

	public void setProvinceCode(String provinceCode) {
		this.provinceCode = provinceCode;
	}

	public String getCityCode() {
		return cityCode;
	}

	public void setCityCode(String cityCode) {
		this.cityCode = cityCode;
	}

	public String getAreaCode() {
		return areaCode;
	}

	public void setAreaCode(String areaCode) {
		this.areaCode = areaCode;
	}

	public String getOrgProvinceCode() {
		return orgProvinceCode;
	}

	public void setOrgProvinceCode(String orgProvinceCode) {
		this.orgProvinceCode = orgProvinceCode;
	}

	public String getOrgProvinceName() {
		return orgProvinceName;
	}

	public void setOrgProvinceName(String orgProvinceName) {
		this.orgProvinceName = orgProvinceName;
	}

	public String getOrgCityCode() {
		return orgCityCode;
	}

	public void setOrgCityCode(String orgCityCode) {
		this.orgCityCode = orgCityCode;
	}

	public String getOrgCityName() {
		return orgCityName;
	}

	public void setOrgCityName(String orgCityName) {
		this.orgCityName = orgCityName;
	}

	public String getOrgAreaCode() {
		return orgAreaCode;
	}

	public void setOrgAreaCode(String orgAreaCode) {
		this.orgAreaCode = orgAreaCode;
	}

	public String getOrgAreaName() {
		return orgAreaName;
	}

	public void setOrgAreaName(String orgAreaName) {
		this.orgAreaName = orgAreaName;
	}

	@Override
	public String toString() {
		return "ClmRoom [roomId=" + roomId + ", siteId=" + siteId
				+ ", provinceCode=" + provinceCode + ", cityCode=" + cityCode
				+ ", areaCode=" + areaCode + ", orgProvinceCode="
				+ orgProvinceCode + ", orgProvinceName=" + orgProvinceName
				+ ", orgCityCode=" + orgCityCode + ", orgCityName="
				+ orgCityName + ", orgAreaCode=" + orgAreaCode
				+ ", orgAreaName=" + orgAreaName + ", teacherId=" + teacherId
				+ ", number=" + number + ", subject=" + subject
				+ ", startDate=" + startDate + ", liveType=" + liveType
				+ ", publicScope=" + publicScope + ", schoolId=" + schoolId
				+ ", stageId=" + stageId + ", gradeId=" + gradeId
				+ ", dictGradeId=" + dictGradeId + ", classId=" + classId
				+ ", subjectId=" + subjectId + ", courseCode=" + courseCode
				+ ", teacherName=" + teacherName + ", schoolName=" + schoolName
				+ ", teacherToken=" + teacherToken + ", studentToken="
				+ studentToken + ", studentClientToken=" + studentClientToken
				+ ", invalidDate=" + invalidDate + ", assistantToken="
				+ assistantToken + ", speakerInfo=" + speakerInfo
				+ ", scheduleInfo=" + scheduleInfo + ", webJoin=" + webJoin
				+ ", clientJoin=" + clientJoin + ", teacherJoinUrl="
				+ teacherJoinUrl + ", studentJoinUrl=" + studentJoinUrl
				+ ", description=" + description + ", duration=" + duration
				+ ", uiMode=" + uiMode + ", uiColor=" + uiColor + ", scene="
				+ scene + ", uiWindow=" + uiWindow + ", uiVideo=" + uiVideo
				+ ", mobileMode=" + mobileMode + ", upgrade=" + upgrade
				+ ", sec=" + sec + ", realtime=" + realtime + ", maxAttendees="
				+ maxAttendees + ", createUserId=" + createUserId
				+ ", createDate=" + createDate + ", beLogin=" + beLogin
				+ ", imageUrl=" + imageUrl + ", subjectName=" + subjectName
				+ ", gradeName=" + gradeName + ", className=" + className
				+ ", beDeleted=" + beDeleted + ", thirdSubject=" + thirdSubject
				+ ", beCheck=" + beCheck + ", upUrl=" + upUrl + "]";
	}

	
}
